<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-day vector-sticky-header-enabled" lang="de" dir="ltr"><head>
<meta charset="UTF-8">
<title>Java-Applet</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://de.wikipedia.org/wiki/Java-Applet"> <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link href="./_mw_/ext.gadget.citeRef.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.defaultPlainlinks.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonHide.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonLayout.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonStyle.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiDarkmode.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiResponsive.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.specialSearch.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Java-Applet rootpage-Java-Applet skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Java-Applet</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="de" dir="ltr"><p>Ein <b>Java-Applet</b> ist ein <a href="Computerprogramm" title="Computerprogramm">Computerprogramm</a>, das mittels <a href="Java-Technologie" title="Java-Technologie">Java-Technologie</a> erstellt und normalerweise in einem <a href="Webbrowser" title="Webbrowser">Webbrowser</a> ausgeführt wird. Applets wurden eingeführt, um Programme in <a href="Webseite" title="Webseite">Webseiten</a> ablaufen lassen zu können, die im Webbrowser (auf der <a href="Client" title="Client">Client</a>-Seite) arbeiten und direkt mit dem Benutzer interagieren können, ohne Daten zum <a href="Server" title="Server">Server</a> senden zu müssen. Java-Applets waren Ende der 1990er Jahre mit ein Grund für den Erfolg und die schnelle Verbreitung von <a href="Java_(Programmiersprache)" title="Java (Programmiersprache)">Java</a>.
</p><p>Neben Applets existieren auch <a href="Servlet" class="mw-redirect" title="Servlet">Servlets</a>; das sind ebenfalls Java-Programme, die allerdings auf dem <a href="Server" title="Server">Server</a> ausgeführt werden.
</p>
<div class="mw-heading mw-heading2"><h2 id="Beseitigung">Beseitigung</h2></div>
<ul><li>Appletbezogene Klassen der <a href="Java_Standard_Edition" class="mw-redirect" title="Java Standard Edition">Java Standardbibliothek</a> werden seit Version 9 als veraltet (engl. deprecated) markiert, was eine Warnung zur Kompilierungszeit generiert.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup></li>
<li>Ab Version 11 hat Oracle das Deployment für Applets entfernt.<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup></li>
<li>In Version 26 werden Applets vollständig aus der Standardbibliothek entfernt.<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Java-Applets_im_Webbrowser">Java-Applets im Webbrowser</h2></div>
<p>Üblicherweise werden Java-Applets von <a href="Webseite" title="Webseite">HTML-Seiten</a> aufgerufen. Um sie ausführen zu können, muss der jeweilige <a href="Webbrowser" title="Webbrowser">Webbrowser</a> über eine entsprechende Java-<a href="Virtuelle_Maschine" title="Virtuelle Maschine">VM</a> verfügen. Diese VM, die <a href="Laufzeitumgebung" title="Laufzeitumgebung">Laufzeitumgebung</a> für das Java-Applet, kann entweder Teil des entsprechenden Browsers sein oder in Form eines Java Plug-ins nachträglich installiert werden (z. B. <a href="Java-Laufzeitumgebung" title="Java-Laufzeitumgebung">JRE</a> von Oracle). Eine weitere Möglichkeit besteht darin, dass der Browser – wie im Fall historischer Versionen von <a href="Opera_(Browser)" title="Opera (Browser)">Opera</a> – <i>direkt</i> mit der VM in Verbindung tritt, also ohne Umweg über ein Plugin.
</p>
<div class="mw-heading mw-heading3"><h3 id="Beispiele_für_Webbrowser_mit_integrierter_Java-VM"><span id="Beispiele_f.C3.BCr_Webbrowser_mit_integrierter_Java-VM"></span>Beispiele für Webbrowser mit integrierter Java-VM</h3></div>
<p>Der Funktionsumfang dieser VMs entspricht nur der <a href="Java_Development_Kit" title="Java Development Kit">JDK</a>-Version 1.1, sie sind aus heutiger Sicht veraltet. Eine aktuelle VM lässt sich aber nachinstallieren.
</p>
<ul><li><a href="Internet_Explorer" title="Internet Explorer">Internet Explorer</a> 3, 4, 5 und 5.5 (Java-1.1.4 ohne RMI/JNI). Microsoft hat die Weiterentwicklung und den Vertrieb der MSJVM eingestellt.</li>
<li><a href="Netscape_Navigator" title="Netscape Navigator">Netscape Navigator</a> 3.x und 4.x (Java-1.1.5)</li></ul>
<div class="mw-heading mw-heading3"><h3 id="Beispiele_für_Webbrowser_ohne_integrierte_Java-VM"><span id="Beispiele_f.C3.BCr_Webbrowser_ohne_integrierte_Java-VM"></span>Beispiele für Webbrowser ohne integrierte Java-VM</h3></div>
<p>Um mit diesen Browsern Applets nutzen zu können, muss eine VM nachinstalliert werden.<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>
</p>
<ul><li><a href="Mozilla" title="Mozilla">Mozilla</a> und alle darauf basierenden Browser wie <a href="Netscape_Navigator" title="Netscape Navigator">Netscape Navigator</a> 6.x und 7.x, <a href="Mozilla_Firefox" title="Mozilla Firefox">Mozilla Firefox</a></li>
<li><a href="Opera_(Browser)" title="Opera (Browser)">Opera</a></li>
<li><a href="Apple_Safari" class="mw-redirect" title="Apple Safari">Apple Safari</a></li>
<li>Internet Explorer ab Version 6</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Appletprogrammierung">Appletprogrammierung</h2></div>
<p>Die Einbindung des Applets in den HTML-Code von <a href="Webseite" title="Webseite">Webseiten</a> erfolgt per 2015 mit dem <code>object</code>-<a href="HTML-Element" class="mw-redirect" title="HTML-Element">Element</a>, das gegenüber dem <code>embed</code>-Element zu bevorzugen ist. Das früher eingesetzte <code>applet</code>-Element gilt mit HTML4 als <i><a href="Deprecated" class="mw-redirect" title="Deprecated">deprecated</a></i> und mit <a href="HTML5" title="HTML5">HTML5</a> als <i>obsolete</i>. Alle Java-Applets werden von der Java-<a href="Klasse_(Programmierung)" class="mw-redirect" title="Klasse (Programmierung)">Klasse</a> <code>java.applet.Applet</code> abgeleitet. Sie verfügen unter anderen über die folgenden <a href="Methode_(Programmierung)" title="Methode (Programmierung)">Methoden</a>, jedoch nicht über eine Methode <code>main()</code>, wie sie für <a href="Java-Anwendung" title="Java-Anwendung">Java-Anwendungen</a> benötigt wird.
</p>
<ul><li><code>init()</code> – wird genau einmal aufgerufen, wenn das Applet erstmals in den Browser geladen wird.</li>
<li><code>start()</code> – wird jedes Mal aufgerufen, wenn das Applet sichtbar wird.</li>
<li><code>paint(…)</code> – Zeichenmethode für die Anzeigefunktionen des Applet</li>
<li><code>stop()</code> – wird jedes Mal aufgerufen, wenn das Applet verdeckt wird, z. B. weil das Browser-Fenster von einem anderen Fenster überdeckt wird.</li>
<li><code>destroy()</code> – wird aufgerufen, wenn das Applet aus dem Hauptspeicher entladen wird.</li></ul>
<p>Für die Programmierung der Benutzeroberfläche können die beiden Techniken <a href="Swing_(Java)" title="Swing (Java)">Swing</a> oder <a href="Abstract_Window_Toolkit" title="Abstract Window Toolkit">AWT</a> verwendet werden. Jedoch ergibt sich die Einschränkung, dass das in die HTML-Oberfläche eingebettete Fenster nicht programmgesteuert geschlossen werden kann, man kann aber zusätzliche Fenster öffnen.
</p>
<div class="mw-heading mw-heading2"><h2 id="Sicherheit">Sicherheit</h2></div>
<p>Applets werden auf dem Rechner des Anwenders ausgeführt und stellen daher – wie jedes lokal ausführbare Programm – ein Sicherheitsrisiko dar (Java Drive-By Exploit). Da die Applets in einer abgeschotteten Laufzeitumgebung (<a href="Sandbox" title="Sandbox">Sandbox</a>) laufen, ist dieses Risiko jedoch gut beherrschbar. Ein Sicherheitsrisiko durch „böswillige“ Applets besteht nur, wenn die Sandbox fehlerhaft ist.
</p><p>Wegen zahlreicher Sicherheitslücken werden Java-Applets ohne Zertifikat durch die neueren Java-Versionen blockiert. Mozilla Firefox hat mit Version 52 die Java-Unterstützung total eingestellt.
</p>
<div class="mw-heading mw-heading2"><h2 id="Einsatzbereiche,_Vorteile_und_Nachteile"><span id="Einsatzbereiche.2C_Vorteile_und_Nachteile"></span>Einsatzbereiche, Vorteile und Nachteile</h2></div>
<p>Die Applet-Technologie bietet dem Programmierer unter Berücksichtigung der Sicherheitsregeln den vollen Funktionsumfang aus der <a href="Java_Platform%2C_Standard_Edition" title="Java Platform, Standard Edition">J2SE</a>-<a href="Programmierschnittstelle" title="Programmierschnittstelle">API</a> und eignet sich sehr gut für Anwendungen in gepflegten Unternehmensnetzen, bei denen alle Anwender die gleiche Java-Version haben. In Zusammenarbeit z. B. mit Servlets oder <a href="Application_Server" class="mw-redirect" title="Application Server">Application Servern</a> lassen sich komplexe Anwendungen erstellen, die auf diese Weise auf die Installation lokaler Software verzichten und ohne großen Aufwand mit unterschiedlichen Browsern und Betriebssystemen laufen können.
</p><p>Ein Nachteil für den Einsatz im Internet und an langsamen Netzwerkanschlüssen ist aber die Größe der JRE mit 12,5 MB (Stand JRE 6.0). Ein weiterer Nachteil ist die vergleichsweise lange Initialisierungszeit für die <a href="Java_Virtual_Machine" title="Java Virtual Machine">JVM</a>, wenn diese noch nicht geladen ist, sowie die Zeit, um das Applet herunterzuladen und zu initialisieren. Mit der Einführung des sogenannten Java-Kernels in Java SE 6 Update 10 kann die Ladezeit der JVM jedoch deutlich verkürzt werden.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>
</p><p>Zu beachten ist auch, dass Inhalte von Java-Applets nicht von <a href="Suchmaschine" title="Suchmaschine">Suchmaschinen</a> erfasst werden können.
</p>
<div class="mw-heading mw-heading2"><h2 id="Hybrides_Applet">Hybrides Applet</h2></div>
<p>Indem ein Java-Applet um eine <i>main</i>-Methode erweitert wird, kann es per <a href="Doppelklick" class="mw-redirect" title="Doppelklick">Doppelklick</a> auf die entsprechende <a href="Java_Archive" title="Java Archive">jar-Datei</a> auch als gewöhnliche <a href="Java-Anwendung" title="Java-Anwendung">Java-Anwendung</a> gestartet werden. Dies ist einerseits für Testzwecke praktisch, da das Applet nicht in einen <a href="Webbrowser" title="Webbrowser">Webbrowser</a> eingebunden werden muss, zum anderen wird eine Java-Anwendung nicht in einem <a href="Sandbox" title="Sandbox">geschützten Bereich</a> ausgeführt, sondern erhält (abgesehen von lokalen Sicherheitsbeschränkungen) grundsätzlich Vollzugriff auf das System. Letzteres kann jedoch zum Nachteil werden, da ein bösartiges Applet somit problemlos <a href="Malware" class="mw-redirect" title="Malware">Schadcode</a> ausführen kann.
</p>
<div class="mw-heading mw-heading2"><h2 id="Einsatz_von_Applets">Einsatz von Applets</h2></div>
<p>Neben vielen Einsätzen in firmeninterner Software finden Applets auch Einsatz in öffentlich umfangreich genutzter Software. Beispiele hierfür sind:
</p>
<ul><li>Fotodienstleister, welche den Upload und die Bearbeitung mit Applets abwickeln</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Siehe_auch">Siehe auch</h2></div>
<ul><li>Im Gegensatz zum Applet läuft eine „<a href="Java-Anwendung" title="Java-Anwendung">Java-Anwendung</a>“ als eigenständiges Java-Programm außerhalb des Browsers. Allerdings kann man das im Browser funktionierende Applet auch von einer eigenständigen Anwendung aus geeignet aufrufen und das Applet dadurch mehrseitig nutzen.</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Weblinks">Weblinks</h2></div>
<div class="sisterproject" style="margin:0.1em 0 0 0;"><div class="noresize noviewer" style="display:inline-block; line-height:10px; min-width:1.6em; text-align:center;" aria-hidden="true" role="presentation"><span class="mw-default-size" typeof="mw:File"><span title="Commons"></span></span></div><b><span class=""><a class="external text" href="https://commons.wikimedia.org/wiki/Category:Java_applets?uselang=de"><span lang="en">Commons</span>: Java-Applet</a></span></b> – Sammlung von Bildern, Videos und Audiodateien</div>
<ul><li><a rel="nofollow" class="external text" href="https://curlie.org/World/Deutsch/Computer/Programmieren/Sprachen/Java/Applets/">Linkkatalog zum Thema Java-Applet</a> bei <i>curlie.org</i> (ehemals <a href="DMOZ" title="DMOZ">DMOZ</a>)</li>
<li><a rel="nofollow" class="external text" href="http://java.com/de/download/index.jsp">Download</a> aktuelle Java-<a href="Laufzeitumgebung" title="Laufzeitumgebung">Laufzeitumgebung</a> (<a href="Java-Laufzeitumgebung" title="Java-Laufzeitumgebung">JRE</a>) mit Browserplugin (Installation)</li>
<li><a rel="nofollow" class="external text" href="http://docs.oracle.com/javase/tutorial/deployment/applet/index.html">Anleitung zum Schreiben von Applets</a> von Sun (bei <a href="Oracle" title="Oracle">Oracle</a>)</li>
<li><a rel="nofollow" class="external text" href="http://www.wikiservice.at/dse/wiki.cgi?JavaApplets">Java-Applet</a> im DSEWiki. Wiki-Seite mit weiterführenden Informationen und Links zum Thema Java-Applets.</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Einzelnachweise">Einzelnachweise</h2></div>
<ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><a href="#cite_ref-1">↑</a></span> <span class="reference-text"><span class="cite">Daniil Titov: <a rel="nofollow" class="external text" href="http://openjdk.java.net/jeps/289"><i>Deprecate the Applet API.</i></a><span class="Abrufdatum"> Abgerufen am 15. März 2017</span>.</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJava-Applet&rft.title=Deprecate+the+Applet+API&rft.description=Deprecate+the+Applet+API&rft.identifier=http%3A%2F%2Fopenjdk.java.net%2Fjeps%2F289&rft.creator=Daniil+Titov&rft.date="> </span></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><a href="#cite_ref-2">↑</a></span> <span class="reference-text"><span class="cite"><a rel="nofollow" class="external text" href="https://www.oracle.com/java/technologies/javase/11-relnote-issues.html#Important_Changes"><i>JDK 11 Release Notes, Important Changes and Information.</i></a><span class="Abrufdatum"> Abgerufen am 23. Februar 2023</span>.</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJava-Applet&rft.title=JDK+11+Release+Notes%2C+Important+Changes+and+Information&rft.description=JDK+11+Release+Notes%2C+Important+Changes+and+Information&rft.identifier=https%3A%2F%2Fwww.oracle.com%2Fjava%2Ftechnologies%2Fjavase%2F11-relnote-issues.html%23Important_Changes"> </span></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><a href="#cite_ref-3">↑</a></span> <span class="reference-text"><span class="cite"><a rel="nofollow" class="external text" href="https://openjdk.org/jeps/504"><i>JEP 504: Remove the Applet API.</i></a><span class="Abrufdatum"> Abgerufen am 3. Januar 2026</span>.</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJava-Applet&rft.title=JEP+504%3A+Remove+the+Applet+API&rft.description=JEP+504%3A+Remove+the+Applet+API&rft.identifier=https%3A%2F%2Fopenjdk.org%2Fjeps%2F504"> </span></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><a href="#cite_ref-4">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.oracle.com/technetwork/java/index-jsp-141438.html">Java Plug-in Technology</a></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><a href="#cite_ref-5">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://java.sun.com/javase/6/6u10faq.jsp">Java Kernel FAQ</a></span>
</li>
</ol></div><!--htdig_noindex--><div><div class="zim-footer">
Dieser Artikel wurde von <a class="external text" title="Zuletzt bearbeitet am 2026-01-04" href="https://de.wikipedia.org/wiki/?title=Java-Applet&oldid=263016379">Wikipedia</a> herausgegeben. Der Text ist unter <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.de">Creative Commons Attribution-Share Alike 4.0</a> verfügbar, sofern nicht anders angegeben. Für die Mediendateien können zusätzliche Bedingungen gelten.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>
</body></html>